const http       = require("http");
const path       = require("path");
        const url        = require("url");
        const fs         = require("fs");

        const superagent = require("./node_modules/superagent");
        const cheerio    = require("cheerio");

        superagent
            .get("http://localhost/miProject/kaola.html")
            .end((error,response)=>{
                //获取页面文档数据
                var content = response.text;
                //cheerio也就是nodejs下的jQuery  将整个文档包装成一个集合，定义一个变量$接收
                var $ = cheerio.load(content);
                //定义一个空数组，用来接收数据
                var result=[];
        //分析文档结构  先获取每个li 再遍历里面的内容(此时每个li里面就存放着我们想要获取的数据)
        $("#meizu-header-link .meizu-header-link-product").each((index,value)=>{
            let itemHref = $(value).children("a").attr("href");
            let itemText = $(value).children("a").text();
            var childArr = [];

                $(".meizu-header-sub").eq(index).find(".meizu-header-sub-ul-on").find("li").each((ind, val) => {
                    console.log("dddd")
                    let aHref = $(val).find("a").attr("href");
                    let childrenImg =  $(val).find("a").find("i").attr("data-src");
                    var childrenTitleIndex = $(val).find("a").text().indexOf("￥");
                    let childrenTitle = $(val).find("a").text().slice(0,childrenTitleIndex);
                    let childrenPrice = $(val).find("a").find("em").text();
                    console.log(childrenPrice)
                    childArr.push({
                        aHref: aHref,
                        childrenImg:childrenImg,
                        childrenTitle:childrenTitle,
                        childrenPrice:childrenPrice
                    })
                })
            result.push({
                itemHref:itemHref,
                itemText:itemText,
                childrenAddText:childArr
            });
            // console.log(typeof $(value).find(".info-primary").children().eq(1).html());
        });
        //将数组转换成字符串
        result=JSON.stringify(result);
        //将数组输出到json文件里  刷新目录 即可看到当前文件夹多出一个boss.json文件(打开boss.json文件，ctrl+A全选之后 ctrl+K，再Ctrl+F即可将json文件自动排版)
        fs.writeFile("catchMe.json",result,"utf-8",(error)=>{
            //监听错误，如正常输出，则打印null
            if(error==null){
                console.log("恭喜您，数据爬取成功!请打开json文件，先Ctrl+A，再Ctrl+K,最后Ctrl+F格式化后查看json文件(仅限Visual Studio Code编辑器)");
            }
        });
    });　　